package cl.ncx.cmvrc.view.mbeans.login;

import javax.faces.component.html.HtmlInputSecret;
import javax.faces.component.html.HtmlInputText;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;

import org.jboss.logging.Logger;

import cl.ncx.cmvrc.business.seguridad.autenticacion.Usuario;


/**
 * Bean que representa el Logueo
 * 
 */
public class LoginBean {

	private final static Logger logger = Logger.getLogger(LoginBean.class);

	// Variables
	private HtmlInputText userName;

	
/**
 *
 * ***********Getters and Setters
 * 
 */
	public HtmlInputText getUserName() {
		return userName;
	}

	public void setUserName(HtmlInputText userName) {
		this.userName = userName;
	}

	public HtmlInputSecret getUserPassword() {
		return userPassword;
	}

	public void setUserPassword(HtmlInputSecret userPassword) {
		this.userPassword = userPassword;
	}

	private HtmlInputSecret userPassword;

/**
 * 
 * Metodos
 * 
 */
	public String checkValidUser() {
		
		if (userName.getValue().equals("admin")&& userPassword.getValue().equals("admin")) {
			
			Usuario usuario = new Usuario();
			usuario.setUsuaDscNombre(userName.getValue().toString());
			usuario.setUsuaPassword(userPassword.getValue().toString());
			
			// TODO Invocar el Delegate para verificar si existe el usuario y password de Login
			
			if(usuario!=null)
			{
				FacesContext facesContext = FacesContext.getCurrentInstance();
				HttpSession session = (HttpSession)facesContext.getExternalContext().getSession(false);
				session.setAttribute("usuario", usuario); // agregamos el usuario a la session
			}
			return "success";
		} else {
			return "falla";
		}
	}

}
